# @Time : 2024-10-23 14:06
# @Author : Fioman 
# @Phone : 13149920693
# region 1. 切边方式实现反转 返回新的列表 lst[::-1]
lst = list(range(10))
lstReverse = lst[::-1]
print(lst, lstReverse, sep="\n")
# endregion

# region 2. 使用列表推导式从后向前实现反转
lst = list(range(10))
lstReverse = [lst[len(lst) - index - 1] for index, item in enumerate(lst)]
print(lst, lstReverse, sep="\n")
# endregion

# region 3. 使用reverse()函数实现反转
lst = list(range(10))
lstReverse = list(reversed(lst))
print(lst, lstReverse, sep="\n")
# endregion

# region 4. 使用列表的reverse()方法
lst = list(range(10))
res = lst.reverse()  # 直接原地操作,返回None
print(lst, res, sep="\n")
# endregion

# region 5. 使用pop() 函数从末尾一个一个弹出形成一个新的列表
lst = list(range(10))
lstReverse = [lst.pop() for _ in range(len(lst))]
print(lst, lstReverse, sep="\n")
# endregion

# region  6. 使用map函数,通过索引从最后一个开始映射到第一个
lst = list(range(10))
lstReverse = list(map(lambda i: lst[-i], range(1, len(lst) + 1)))
print(lst, lstReverse, sep="\n")
# endregion
